package com.yc.cloud.openai.dto.request.coze;

import java.util.List;
import javax.validation.constraints.NotEmpty;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Data
@Schema(description = "Coze对话流运行参数")
public class CozeRunChatWorkflowParam {

    @Schema(description = "会话ID")
    @NotEmpty(message = "会话ID不能为空")
    private String conversationId;

    @Schema(description = "用户名",hidden = true)
    private String username;

    @Schema(description = "机器人ID",hidden = true)
    private String botId;

    @Schema(description = "工作流ID" ,hidden = true)
    private String workflowId;

    @Schema(description = "工作流参数",hidden = true)
    private Object parameters;

    @Schema(description = "附加消息",hidden = true)
    private List<Message> additionalMessages;

    @Data
    public static class Message {
        @Schema(description = "消息内容")
        private String content;

        @Schema(description = "内容类型")
        private String contentType;

        @Schema(description = "角色")
        private String role;

        @Schema(description = "类型")
        private String type;
    }
}
